In some block based backup systems, files or other data objects are backed up by storing blocks associated with the data objects being backed up. Blocks and associated metadata are updated as needed and are retrieved in the event a file or other data object is restored. During restoration, blocks and other information (e.g., an inode number associated with files being restored and/or physical locations of blocks associated with those files) are retrieved from backup media or other memory. For example, for each file to be restored in some systems a file name is mapped to an inode number, the inode number is used to identify blocks comprising the file and the location at which each block is stored on backup media, the blocks comprising the file are read from the backup media, and the blocks read from backup media are used to restore the file to the destination machine. In some cases, if many files are restored in a single operation, e.g., a large directory containing a million or more files, some block based backup systems take a significant amount of time to perform the operation, in part due to the overhead and idle time associated with restoring so many files. It would be desirable to reduce the amount of time to restore files using a block based backup system.